Handle double queuing, rather than asserting that it does not happen.
authorMatthias Clasen <mclasen@redhat.com>
Wed, 29 Mar 2006 05:35:00 +0000 (05:35 +0000)
committerMatthias Clasen <matthiasc@src.gnome.org>
Wed, 29 Mar 2006 05:35:00 +0000 (05:35 +0000)
2006-03-29  Matthias Clasen  <mclasen@redhat.com>

* gtk/gtkfilechooserdefault.c (queue_edited_idle): Handle
double queuing, rather than asserting that it does not
happen.  (#330617)

ChangeLog
ChangeLog.pre-2-10
gtk/gtkfilechooserdefault.c

index 46b19b5a3d3bbb862fe91935123f47d7bef08664..e98872f38f2732c9a962d193a1b174ba04555dbb 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2006-03-29  Matthias Clasen  <mclasen@redhat.com>
+
+       * gtk/gtkfilechooserdefault.c (queue_edited_idle): Handle
+       double queuing, rather than asserting that it does not 
+       happen.  (#330617)
+
 2006-03-28  Matthias Clasen  <mclasen@redhat.com>      
 
        * gtk/gtknotebook.c (gtk_notebook_set_tab_detachable): Fix
index 46b19b5a3d3bbb862fe91935123f47d7bef08664..e98872f38f2732c9a962d193a1b174ba04555dbb 100644 (file)
@@ -1,3 +1,9 @@
+2006-03-29  Matthias Clasen  <mclasen@redhat.com>
+
+       * gtk/gtkfilechooserdefault.c (queue_edited_idle): Handle
+       double queuing, rather than asserting that it does not 
+       happen.  (#330617)
+
 2006-03-28  Matthias Clasen  <mclasen@redhat.com>      
 
        * gtk/gtknotebook.c (gtk_notebook_set_tab_detachable): Fix
index 4843f28b253cdfecfa2b46f0d9db235d0c5c14ad..b78370a64752a54ea559406dc93a669593c5a53a 100644 (file)
@@ -1891,17 +1891,17 @@ queue_edited_idle (GtkFileChooserDefault *impl,
    * just now.
    */
 
-  g_assert (!impl->edited_idle);
-  g_assert (!impl->edited_new_text);
-
-  impl->edited_idle = g_idle_source_new ();
-  g_source_set_closure (impl->edited_idle,
-                       g_cclosure_new_object (G_CALLBACK (edited_idle_cb),
-                                              G_OBJECT (impl)));
-  g_source_attach (impl->edited_idle, NULL);
+  if (!impl->edited_idle)
+    {
+      impl->edited_idle = g_idle_source_new ();
+      g_source_set_closure (impl->edited_idle,
+                           g_cclosure_new_object (G_CALLBACK (edited_idle_cb),
+                                                  G_OBJECT (impl)));
+      g_source_attach (impl->edited_idle, NULL);
+    }
 
-  if (new_text)
-    impl->edited_new_text = g_strdup (new_text);
+  g_free (impl->edited_new_text);
+  impl->edited_new_text = g_strdup (new_text);
 }
 
 /* Callback used from the text cell renderer when the new folder is named */